package ipebg.mzk.facade.system.service;

import ipebg.mzk.facade.entity.MsFunctionOption;
import ipebg.mzk.facade.entity.MsFunctionRoleOption;

import java.util.List;

public interface MsFunctionOptionService {

	/**
	 * 根據functionId獲取該頁面所有的按鈕
	 * @param nodeCode
	 * @return
	 * @throws Exception
	 */
	public List<MsFunctionOption> findAllOptionByFunc(String nodeCode) throws Exception;

	/**
	 * 保存按鈕對象方法
	 * @param optionBean
	 * @throws Exception
	 */
	public void save(MsFunctionOption optionBean) throws Exception;

	/**
	 * 根據頁面functionId和按鈕Id(optionId)獲取按鈕對象
	 * @param functionId
	 * @param optionId
	 * @return
	 * @throws Exception
	 */
	public MsFunctionOption findOption(String functionId, String optionId) throws Exception;

	/**
	 * 刪除按鈕對象
	 * @param option
	 * @throws Exception
	 */
	public void deleteOption(MsFunctionOption option) throws Exception;

	/**
	 * 根據按鈕Id查找Function、Role、Option關聯的List
	 * @param optionId
	 * @return
	 * @throws Exception 
	 */
	public List<MsFunctionRoleOption> findFunctionRoleOptionListByOptionId(String optionId) throws Exception;


	public List<MsFunctionOption> findOptionByLoginNameFunctionId(String loginName, String functionId);

}
